package com.yan.design.one.principle1.o1;

/**
 * 设计模式 ： 7大原则
 *      1. 单一职责原则（SRP）
 *           方式 1. 单一职责原则 ,不同职责创建一个类
 *           方式 2. 如果方法类少创建不同的方法区分
 * @author shengren.yan
 * @create 2022-07-03
 */
public class principle1 {


    public static void main(String[] args) {
        // 方式 1. 单一职责原则 ,不同职责创建一个类
        RoadVe r1 = new RoadVe();
        r1.run("汽车");
        RoadVe2 r2 = new RoadVe2();
        r2.run("自行车");
        RoadVe r3 = new RoadVe();
        r3.run("轮船");
        // 方式 2. 如果方法类少创建不同的方法区分
        RoadVe4 roadVe4 = new RoadVe4();
        roadVe4.run1("汽车");
        roadVe4.run2("自行车");
        roadVe4.run3("轮船");
    }


    // 方式 1. 单一职责原则 ,不同职责创建一个类
    static class RoadVe {
        public void run(String args) {
            System.out.println("---" + args + " 公路运行");
        }
    }

    static class RoadVe2 {
        public void run(String args) {
            System.out.println("---" + args + " 马路运行");
        }
    }

    static class RoadVe3 {
        public void run(String args) {
            System.out.println("---" + args + " 海上运行");
        }
    }

    // 方式 2. 如果方法类少创建不同的方法区分
    static class RoadVe4 {
        public void run1(String args) {
            System.out.println("---" + args + " 公路运行");
        }
        public void run2(String args) {
            System.out.println("---" + args + " 马路运行");
        }
        public void run3(String args) {
            System.out.println("---" + args + " 海上运行");
        }
    }

}
